package com.lonely.goods.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lonely.goods.domain.dto.goods.GoodsDesignInfoSubmitDTO;
import com.lonely.goods.domain.dto.goods.GoodsQuotationSheetPartDTO;
import com.lonely.goods.domain.entity.SysGoodsPart;
import com.lonely.goods.domain.vo.goods.CopyBomQueryVO;

import java.util.List;

/**
 * @author: 黄志标
 * @date: 2025/6/25 15:42
 * @description: 商品部件接口
 */
public interface IGoodsPartService extends IService<SysGoodsPart> {

    /**
     * 查询指定商品的报价单部件物料信息
     *
     * @param goodsId
     * @return
     */
    List<GoodsQuotationSheetPartDTO> queryQuotationSheetPartDetail(Long goodsId);

    /**
     * 编辑商品款信息对应的部件信息
     *
     * @param submitDTO
     */
    void submitGoodsDesignInfoParts(GoodsDesignInfoSubmitDTO submitDTO);

    /**
     * 复制已有bom的数据查询
     *
     * @param goodsId
     * @return
     */
    List<CopyBomQueryVO> copyBomDataQuery(Long goodsId);

    /**
     * 初始化一个非套装的商品部件
     *
     * @param id
     */
    void initNoSuitPart(Long id);

    /**
     * 获取指定商品的部件数
     *
     * @param goodsId
     * @return
     */
    Integer getMultiPiecesQuantity(Long goodsId);
}
